let arr = [1, 2, 3, 4, 5]

// f(n) = f(n - 1) + f(n - 2)

// f(n) = f(n - 2) + 2
// f(n) = f(n - 1) + 1
// f(n - 1) = f(n - 2) + 1

// var climbStairs = function (n) {
//     const f = []
//     function dfs(n) {
//         if (n === 1) {
//             return 1;
//         }
//         if (n === 2) {
//             return 2;
//         }
//         if (f[n] === undefined) {
//             f[n] = dfs(n - 1) + dfs(n - 2)
//         }
//     }
//     dfs(n)
//     return f[n]
// };

var climbStairs = function (n) {
    const f = []
    f[1] = 1
    f[2] = 2
    for (let i = 3; i <= n; i++) {
        f[i] = f[i - 1] + f[i - 2]
    }
    return f[n]
}
console.log(climbStairs(3));
